#include "BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h"
#ifdef __cplusplus
extern "C" {
#endif
btVector3* bullet_btStorageResult_GetFieldOfM_closestPointInB(btStorageResult* c_this){
	return (btVector3*)(&c_this->m_closestPointInB);
}

double bullet_btStorageResult_GetFieldOfM_distance(btStorageResult* c_this){
	return (double)(c_this->m_distance);
}

btVector3* bullet_btStorageResult_GetFieldOfM_normalOnSurfaceB(btStorageResult* c_this){
	return (btVector3*)(&c_this->m_normalOnSurfaceB);
}

btDiscreteCollisionDetectorInterface::ClosestPointInput* bullet_NewbtDiscreteCollisionDetectorInterfaceClosestPointInput(){
	btDiscreteCollisionDetectorInterface::ClosestPointInput* wrap_out = new btDiscreteCollisionDetectorInterface::ClosestPointInput();
	return wrap_out;
}

double bullet_btDiscreteCollisionDetectorInterfaceClosestPointInput_GetFieldOfM_maximumDistanceSquared(btDiscreteCollisionDetectorInterface::ClosestPointInput* c_this){
	return (double)(c_this->m_maximumDistanceSquared);
}

btTransform* bullet_btDiscreteCollisionDetectorInterfaceClosestPointInput_GetFieldOfM_transformA(btDiscreteCollisionDetectorInterface::ClosestPointInput* c_this){
	return (btTransform*)(&c_this->m_transformA);
}

btTransform* bullet_btDiscreteCollisionDetectorInterfaceClosestPointInput_GetFieldOfM_transformB(btDiscreteCollisionDetectorInterface::ClosestPointInput* c_this){
	return (btTransform*)(&c_this->m_transformB);
}

#ifdef __cplusplus
}
#endif
